﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Generic.Contract;

namespace Contract.Business.Entity
{
    public class BECliente : BEGeneric
    {
        #region Atributos
        private string _Nome;
        private bool _Bloqueado;
        private string _TelResidencial;
        private string _TelCelular;
        private string _Email;
        private DateTime _Nascimento;
        private bool _DesejaReceberEmails;

        #endregion

        #region Propriedades
        public string Nome
        {
            get
            {
                return this._Nome;
            }
            set
            {
                if (this._Nome != value)
                {
                    this.SendPropertyChanging();
                    this._Nome = value;
                    this.SendPropertyChanged("Nome");
                }
            }
        }

        public bool Bloqueado
        {
            get
            {
                return this._Bloqueado;
            }
            set
            {
                if (this._Bloqueado != value)
                {
                    this.SendPropertyChanging();
                    this._Bloqueado = value;
                    this.SendPropertyChanged("Bloqueado");
                }
            }
        }

        public string TelResidencial
        {
            get
            {
                return this._TelResidencial;
            }
            set
            {
                if (this._TelResidencial != value)
                {
                    this.SendPropertyChanging();
                    this._TelResidencial = value;
                    this.SendPropertyChanged("TelResidencial");
                }
            }
        }

        public string TelCelular
        {
            get
            {
                return this._TelCelular;
            }
            set
            {
                if (this._TelCelular != value)
                {
                    this.SendPropertyChanging();
                    this._TelCelular = value;
                    this.SendPropertyChanged("TelCelular");
                }
            }
        }

        public string Email
        {
            get
            {
                return this._Email;
            }
            set
            {
                if (this._Email != value)
                {
                    this.SendPropertyChanging();
                    this._Email = value;
                    this.SendPropertyChanged("Email");
                }
            }
        }

        public DateTime Nascimento
        {
            get
            {
                return this._Nascimento;
            }
            set
            {
                if (this._Nascimento != value)
                {
                    this.SendPropertyChanging();
                    this._Nascimento = value;
                    this.SendPropertyChanged("Nascimento");
                }
            }
        }

        public bool DesejaReceberEmails
        {
            get
            {
                return this._DesejaReceberEmails;
            }
            set
            {
                if (this._DesejaReceberEmails != value)
                {
                    this.SendPropertyChanging();
                    this._DesejaReceberEmails = value;
                    this.SendPropertyChanged("DesejaReceberEmails");
                }
            }
        }
        #endregion

        #region Métodos Override
        public override string ToString()
        {
            return this.Nome;
        }
        #endregion
    }
}
